During the course of computer operation, it is often desirable to transmit information between computers at different locations. To accomplish this, a signal transportation means must be available. One readily available means for signal transportation is a telephone line. However, telephone lines do not provide for digital communication. Therefore, a means for translating a serial digital signal sent from a computer port into an analog signal suitable for telephone line transport, and for providing the reverse operation, must be used. The standard method is to use a modulation scheme in which the digital information is used to modulate a carrier signal. A modem (modulator/demodulator) is used to accomplish the modulation of outgoing signals and the demodulation of incoming signals.
A number of transmission schemes are utilized to maximize the amount of information that can be transmitted in a given bandwidth. Two popular modulation schemes are known as quadrature phase shift key (QPSK) and quadrature amplitude modulation (QAM) (in which the phase and amplitude of a modulated sine wave carrier signal are utilized to convey information). QPSK signals are generated by shifting the phase of a carrier wave by .pi./2 radians. A QPSK signal has one of four possible phases, each phase representing one of four binary pairs (00, 01, 10, 11). The QPSK wave is defined by EQU S.sub.i(t) =cos(.omega..sub.c t+.theta..sub.i)=a.sub.i cos(.omega..sub.c t)-b.sub.i sin(.omega..sub.c t).
Transmission of this type is often called quadrature transmission, with two carriers in phase quadrature to one another (cosine .omega..sub.c t and sine .omega..sub.c t) transmitted simultaneously over the same channel.
An example of a QPSK transmission scheme is illustrated in FIG. 4A. Referring to FIG. 4A, the horizontal axis, corresponding to a.sub.i, is called the "in phase" axis. The vertical axis, corresponding to b.sub.i, is called the "quadrature" axis. The signal points in the four quadrants of FIG. 4A represent a signal "constellation." The constellation points are matched such that the points {(1,1); (-1, 1); (-1, -1): (1, -1)} each represent one of the four bit-patterns: (00, 01, 10, 11).
By assigning multiple values to a.sub.i and b.sub.i, the multi-level symbol signalling scheme known as quadrature amplitude modulation (QAM), is generated. The QAM scheme involves multi-level amplitude modulation applied independently to each of the quadrature carriers. Thus, a 16 state constellation, such as that illustrated in FIG. 4B, may be generated. Each point of the QPSK modulation scheme of FIG. 4A now represents four points in the QAM scheme, so that a total of 16 constellation points are defined in the QAM constellation. The general QAM signal is given by: EQU S.sub.i (t)=r.sub.i cos(.omega..sub.c t+.theta..sub.i)=a.sub.i cos(.omega..sub.c t)-b.sub.i sin(.omega..sub.c t)
where a.sub.i and b.sub.i can be -3, -1, 1 or 3. The amplitude r.sub.i is given by the appropriate combinations of (a.sub.i, b.sub.i). A phase detector/amplitude level detector combination is then used to extract digital information. Thus a data scheme suitable for telephone line transmission is described.
A dial-up switched telephone network is illustrated in FIG. 5. Terminal A 500 is coupled to modem A 501. Modem A 501 is coupled to hybrid A 503 by a two-wire channel 502. Hybrid A 503 is coupled to hybrid B 505 by the main four-wire channel 504. One pair of wires 504A is used to transmit from subscriber A to subscriber B. The other pair 504B is used to transmit from subscriber B to subscriber A. Hybrid B 505 is coupled to modem B 507 by a local two-wire channel 506. Modem B 507 is coupled to terminal B 508
The two-wire channels 502 and 506 are the communication link between the subscribers and their local central telephone office. At the central telephone office, the two-wire channels are linked to four-wire channels, called trunk lines, by a 4/2 wire -converting hybrid. These hybrids are tuned to isolate the transmit and receive channels, but the isolation is often insufficient due to mismatching of the hybrid and telephone line impedances. Consequently, some of the transmitted signal leaks back to the receiving line causing an echo in the signal.
An echo signal which originates from the local transmitter of subscriber A, is bounced off hybrid B, and echoed back to the receiver of subscriber A is called "talker" echo. Talker echo cancellation is accomplished in the prior art by taking a sample of the input signal from line 509 and using adaptive filter techniques to cancel the talker echo in the receiver signal.
A system for talker echo cancellation is described in Proakis' and Manolakis' book, Introduction to Digital Signal Processing, MacMillan 1988 pages 864-868. The signal to be transmitted is passed through an adaptive filter. The filter output is then used to subtract the talker echo from the incoming "receive" signal.
An echo signal which originates from the local transmitter of subscriber A, is reflected off hybrid B, then reflected off hybrid A to end up at subscriber B, is called "listener" echo. This echo represents the transmitted signal passed through one additional round trip of the telephone line.
In the transmission of signals through telephone lines, modem performance is inhibited by this unwanted "listener echo." When a signal is sent from a transmitter, the receiver obtains not only the transmitted signal, but an added echo signal, caused by a reflection of the signal through the telephone line. If the trunk loss of the telephone circuit is high and the 4/2 wire converting hybrids at both ends of the circuit are properly designed, this "listener echo" is small and can be neglected. This is the case especially for modems operating at lower speeds, where tolerance for disturbances are relatively high. However, for higher speed modems such as the V.32BIS, where the highest data rate can reach 14,400 bits per second, the tolerance for any disturbances is much reduced. Frequently, the telephone circuits are such that listener echo makes satisfactory operation through these channels impossible. (The TIA TR-30.3 subcommittee has proposed a number of test channels among which channels #9 and #11 reflect severe listener echoes.)
The addition of the listener echo to the incoming signal moves the signal a distance from the appropriate constellation point as represented in FIG. 4B by the point (a.sub.i ', b.sub.i '). For example, an echo signal could be of the form: EQU e.sub.i (t)=.alpha.a.sub.i-d cos(.omega..sub.c t)-.alpha.b.sub.i-d sin(.omega..sub.c t)
where .alpha. is the attenuation of the two 4/2 wire converting hybrids and the round trip trunk line, and a.sub.i-d and b.sub.i-d represent the constellation point of one round trip delay earlier. The resulting signal is: EQU S.sub.i (t)=(a.sub.i +.alpha.a.sub.i-d)cos (.omega..sub.c t)-(b.sub.i +.alpha.b.sub.i-d) sin(.omega..sub.c t).
So the point (a.sub.i ', b.sub.i ') is really (a.sub.i +.alpha.a.sub.i-d, bi+.alpha.b.sub.i-d). In reality, there is an extra term for prior echoes and a round trip phase shift for each. The function becomes: ##EQU1## where r is the respective number of delays for that term and .theta. is the round trip phase shift.
A slicer or quantizer is used within the circuit to choose which constellation point the point (a.sub.i ', b.sub.i ') is supposed to represent. The slicer then outputs the ideal signal for that constellation point. In the QPSK scheme, the constellation points are relatively far spaced, with only one point to each quadrant. In the QAM scheme, there are a number of points to each quadrant, for example, for 14,400 bps, there are 32 points in each quadrant, so they are more closely packed. Thus, in a QAM scheme, the echo can create an error significant enough for the slicer to mistake the point (a.sub.i ', b.sub.i ') for an inappropriate constellation point.
Modems have two modes of operation. They are half duplex mode and full duplex mode. In half duplex mode the telephone line is being used exclusively to either send or receive data at one time. In full duplex mode, the telephone line is being used to both send and receive data simultaneously. A common way to reduce the echoes, either "talker" or "listener" in half duplex mode, is to enable the echo suppressor of the line. However, in full duplex mode, that approach is not practical. This is because the received signal will be unduly attenuated, providing yet another problem.
For most modems, the start-up sequence does not include a measurement of the round trip signal delay. In this instance, the listener echo is ignored by modem designers, and the assumption is made that listener echo will be of no consequence for the majority of telephone circuits. This assumption is false in the case of very fast modems like V.32 and V.32BIS modems. These devices have a high sensitivity to disturbances, thus, the listener echo cannot be ignored. Fortunately, these devices are equipped with a mechanism that measures the round trip delay for far end talker echo. This measurement also represents the round trip delay for the listener echo.